package com.wyix.utils;

import com.wyix.entity.Book;

import java.util.ArrayList;
import java.util.List;

public class PageUtils {
    /**
     * 分页获取数据
     *
     * @param allBooks    全部图书列表（ArrayList存储）
     * @param currentPage 当前页码（从1开始）
     * @param pageSize    每页显示数量
     * @return 当前页的图书子列表
     */
    public static List<Book> getPageData(ArrayList<Book> allBooks, int currentPage, int pageSize) {
        int total = allBooks.size();
        // 计算起始索引（避免越界）
        int start = (currentPage - 1) * pageSize;
        if (start >= total) {
            return new ArrayList<>(); // 空列表表示无数据
        }
        // 计算结束索引（不超过总数量）
        int end = Math.min(start + pageSize, total);
        // ArrayList的subList是视图，直接返回即可
        return allBooks.subList(start, end);
    }
}